package com.ziroom.crm.mq.core.node;

/**
 * <p></p>
 * <p>
 * <PRE>
 * <BR>    修改记录
 * <BR>-----------------------------------------------
 * <BR>    修改日期         修改人          修改内容
 * </PRE>
 *
 * @author WeiShaoying
 * @version 1.0
 * @date Created in 2020年08月31日 15:54
 * @since 1.0
 */
public interface Node {

    /**
     * 全部发送总数
     * @return
     */
    long totalSend();

    /**
     * 成功个数
     * @return
     */
    long totalSendSuccess();

    /**
     * 失败个数
     * @return
     */
    long totalSendException();

    /**
     * 重试成功个数
     * @return
     */
    long totalReSendSuccess();

    /**
     * 重试失败个数
     * @return
     */
    long totalReSendException();

    /**
     * 增加成功个数
     * @return
     */
    void incSendSuccess();

    /**
     * 增加失败个数
     * @return
     */
    void incSendException();

    /**
     * 增加重新发送成功个数
     */
    void incReSendSuccess();

    /**
     * 增加重新发送失败个数
     */
    void incReSendException();

    /**
     * 全部消费总数
     * @return
     */
    long totalConsume();

    /**
     * 消费成功个数
     * @return
     */
    long totalConsumeSuccess();

    /**
     * 消费失败个数
     * @return
     */
    long totalConsumeException();

    /**
     * 重试消费成功个数
     * @return
     */
    long totalReConsumeSuccess();

    /**
     * 重试消费失败个数
     * @return
     */
    long totalReConsumeException();

    /**
     * 增加消费成功个数
     * @return
     */
    void incConsumeSuccess();

    /**
     * 增加消费失败个数
     * @return
     */
    void incConsumeException();

    /**
     * 增加重新消费成功个数
     */
    void incReConsumeSuccess();

    /**
     * 增加重新消费失败个数
     */
    void incReConsumeException();
}
